home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple II Magazines (PO)
/
Bits and Bytes Volume 11, No. 05 (1989-11)(Apple Computing Enjoyment Society)(Side B).zip
/
Bits and Bytes Volume 11, No. 05 (1989-11)(Apple Computing Enjoyment Society)(Side B).po
/
PROGRAMS
/
CHG.FONT.FTYPE.bas
< prev
next >
Wrap
BASIC Source File
|
1996-12-24
|
4KB
|
118 lines
10 REM PROGRAM MODIFIED FROM FILE TYPE CHANGER BY JIM MENSH
20 D$ = CHR$(4)
25 TEXT : HOME : PRINT CHR$(21)
30 REM SET UP VARIABLE NAMES
40 PARMCOUNT = 16384: REM PARAMETER COUNT
50 PNAME = 16385: REM PATHNAME
60 FTYPE = 16388: REM PRODOS FILE TYPE
70 PBUF = 16640
80 CMMD = 771
90 REM SET UP PATH NAME PARMS
100 POKE PNAME,0: POKE PNAME +1,65: REM SET PATH NAME BUFFER TO 16640
110 TEXT : HOME : VTAB 2
120 PRINT " Beta Version 1.2 - - Public Domain": PRINT
130 PRINT " FONT TYPE FIXER for PUBLISH IT! [tm]"
140 PRINT "________________________________________"
150 PRINT "This Program is modified from one by Jim Mensch of Cupertino California"
160 PRINT
170 PRINT "Changes compatible Macintosh/IIgs Fonts between $C8 (FON) and $F7 (IMG) types."
180 PRINT
190 PRINT "Since this MODIFIES YOUR FONT DISK, you should make and use a BACKUP Font Disk!"
200 PRINT
210 PRINT "Remove this Program Disk and place your BACKUP Font Disk in the Drive now."
220 PRINT : INVERSE : PRINT " BE SURE IT IS NOT WRITE PROTECTED ": PRINT : NORMAL
230 PRINT " <Hit any key to continue>"
240 KEY = PEEK(49152): IF KEY <128 THEN 240
250 POKE 49168,0
260 TEXT : HOME : REM MACH LANG ROUTINE
270 POKE 768,32: POKE 769,0
280 POKE 770,191: POKE 771,196
290 POKE 772,0: POKE 773,64
300 POKE 774,133: POKE 775,255
310 POKE 776,96
320 REM GET NEW PREFIX AND ADD FILE NAME LATER
330 PRINT D$;"PREFIX"
340 INPUT PR$
350 PRINT D$;"PREFIX";PR$
360 POKE (FTYPE),0
370 VTAB 4
380 VTAB 15: PRINT " Hit <RETURN> to CATALOG": VTAB 4
390 INPUT "Name of Font to Change ? ";F$
400 IF F$ = "" THEN GOTO 1100
410 P$ = PR$ +F$
420 REM GET FILE INFO
430 L = LEN(P$): REM GET LENGTH OF PATH NAME
440 IF L <1 THEN P$ = "&BADPATH" GOTO 430
450 POKE PBUF,L
460 FOR X = 1 TO L: POKE PBUF +X, ASC( MID$ (P$,X,1)): NEXT X: REM STORE THE PATH NAME
470 POKE PARMCOUNT,10: REM PARM COUNT FOR GET FILE INFO
480 POKE CMMD,196: REM COMMAND NUMBER FOR GFI
490 CALL 768: REM NOW GO GET THE FILE INFO!
500 IF PEEK(255) < >0 GOTO 950
510 REM PRINT OUT INFORMATION
520 Q = PEEK(FTYPE)
530 HOME : VTAB 4
540 PRINT F$;" on Volume ";PR$
550 PRINT "is a";
560 IF Q = 200 THEN PRINT " $C8 IIgs (FON) Font."
570 IF Q = 247 THEN PRINT " $F7 (IMG) Font"
580 IF Q <200 THEN PRINT "n INVALID Font !": GOSUB 1050: GOTO 360
590 PRINT
600 PRINT "Do you wish to change it to a"
610 IF Q = 200 THEN PRINT "$F7 (IMG) Font ?"
620 IF Q = 247 THEN PRINT "$C8 (FON) Font ?"
630 PRINT : PRINT
640 INPUT "(Y/N) ? ";R$
650 IF R$ = "Y" OR R$ = "y" THEN GOTO 670
660 GOTO 840
670 REM NOW SET THE NEW FILE TYPE...
680 PRINT : PRINT
690 IF Q = 200 THEN CT = 247
700 IF Q = 247 THEN CT = 200
710 POKE FTYPE,CT
720 PRINT : PRINT : FLASH
730 HTAB 16
740 PRINT "WORKING"
750 POKE CMMD,195
760 POKE PARMCOUNT,7
770 CALL 768
780 NORMAL
790 IF PEEK(255) < >0 GOTO 950
800 PRINT : HOME : INVERSE
810 PRINT " THE FONT TYPE HAS BEEN CHANGED ! ": NORMAL
820 PRINT "You may wish to catalog the disk to check any changes made": PRINT
830 POKE FTYPE,0
840 PRINT : PRINT
850 INPUT "Work with additional fonts (Y/N) ? ";R$
860 IF R$ = "Y" OR R$ = "y" THEN HOME : GOTO 360
870 PRINT : PRINT
880 PRINT "Program Modified by:"
890 PRINT
900 PRINT "Bill Olson
910 PRINT "6970 Arbor Drive"
920 PRINT "Riverside, CA"
930 PRINT "92504"
940 END
950 REM MLI ERROR TRAPPING
960 HOME : VTAB 12: HTAB 13
970 IF PEEK(255) = 39 THEN PRINT "I/O ERROR !"
980 IF PEEK(255) = 43 THEN PRINT "WRITE PROTECTED"
990 IF PEEK(255) = 68 THEN PRINT "PATH NOT FOUND"
1000 IF PEEK(255) = 69 THEN PRINT "VOLUME NOT FOUND"
1010 IF PEEK(255) = 70 THEN PRINT "FILE NOT FOUND"
1020 CALL 54915: REM CLEAR OFF STACK
1030 GOSUB 1050: HOME
1040 GOTO 360
1050 REM DELAY LOOP
1060 FOR DLY = 1 TO 2000
1070 NEXT DLY
1080 HOME
1090 RETURN
1100 REM CATALOG ROUTINE
1110 TEXT : HOME
1120 PRINT D$;"CAT"
1130 INVERSE : PRINT " ANY KEY TO CONTINUE "
1140 NORMAL
1150 KEY = PEEK(49152): IF KEY <128 THEN 1150
1160 POKE 49168,0
1170 HOME : GOTO 360